package almacenes.controlador.administrar;

import java.util.ArrayList;
import java.util.List;

import javax.faces.FacesException;
import javax.faces.bean.ManagedBean;

import almacenes.modelo.entidad.TipoProveedor;
import almacenes.modelo.service.ProveedorService;
import almacenes.modelo.service.impl.ProveedorServiceImpl;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

@ManagedBean(name="tipoProveedorMB")
public class TipoProveedorMB {
	protected final Log logger = LogFactory.getLog(this.getClass());
	
	private List<TipoProveedor> lstTipoProveedor;
	private ProveedorService objProveedorService;

	public TipoProveedorMB() {
		super();
		this.lstTipoProveedor = new ArrayList<TipoProveedor>();
		this.logger.debug("inicializado TipoProveedorMB");
	}
	
	public void obtenerTiposProveedores(){
		this.logger.debug("obtenerTiposProveedores");
		
		this.objProveedorService = new ProveedorServiceImpl();
		try {
			this.lstTipoProveedor = objProveedorService.obtenerTiposDeProveedores();
		} catch (Exception ex) {
			String sMensaje = "No se puedo inicializar lstTipoProveedor";
			this.logger.error("No se puedo inicializar lstTipoProveedor", ex);
			throw new FacesException(sMensaje, ex);
		}
	}

	public List<TipoProveedor> getLstTipoProveedor() {
		if(lstTipoProveedor.isEmpty()){
			obtenerTiposProveedores();
		}
		return lstTipoProveedor;
	}

	public void setLstTipoProveedor(List<TipoProveedor> lstTipoProveedor) {
		this.lstTipoProveedor = lstTipoProveedor;
	}

	
	
}
